(function($){
    $.fn.slide = function(o){
        var d={
            auto:[false, 3000],
            speed:1000,
            visible:4,
            scroll:1
        };

        var c=0;
        var opts= $.extend({},d,o);
        opts.scroll = opts.scroll>opts.visible?opts.visible:opts.scroll;

        this.each(function(){
            var prev=$(this).find('div.prev'),
                next=$(this).find('div.next'),
                block=$(this).find("div.block"),
                innerBlock=block.find("ul"),
                list=innerBlock.find('li'),
                listNum=list.size(),
                listWidth=list.width(),
                blockWidth=listWidth*opts.visible;

            $(this).width(blockWidth+prev.width()+next.width());
            block.width(blockWidth).find("ul").width(listWidth*listNum);

            prev.click(function(){
               if(c!=0){
                   innerBlock.animate({
                       "margin-left":"+=" + listWidth
                   }, opts.speed);
                   c=c-1;
               }

               if(c==0){
                   prev.css("visibility", "hidden");
               }
               next.css("visibility", "visible");;
            });
            next.click(function(){
                if (c+opts.visible < listNum){
                    innerBlock.animate({"margin-left": "-=" + listWidth}, opts.speed);
                    c=c+1;
                }
                if(c+opts.visible==listNum){
                    next.css("visibility", "hidden");
                }
                prev.css("visibility", "visible");
            });

            if (opts.auto[0]) {

                $(this).width(blockWidth);
                prev.hide();
                next.hide();
            }
        })
    }


})(jQuery)